草庐IT

PHP in_array 忽略前导零

全部标签

php - (array) type cast strange behavior object to array 转换

早些时候我有一些代码块并且工作正常,但在某些情况下它会引发PHP通知:代码如下:$json='{"1455260079":"Tracking:#34567808765098767USPS","1455260723":"Delivered","1455261541":"ReceivedBack"}';$json_obj=json_decode($json);$json_array=(array)$json_obj;var_dump($json_array);print_r($json_array);echo$json_array["1455260079"]."\n";输出:array(3

php - 如何将 array() 存储在 RedBean 属性中?

我得到了以下信息:$post=(array)json_decode($post);$pushUser->dagen=(array)$post['days'];帖子的“天”部分是:[dagen]=>Array([0]=>Monday[1]=>Wednesday)我想做的就是在$pushUser-dagen中存储包含天数的数组:)...很简单吧?但是我得到了这些错误:exception'RedBean_Exception_Security'withmessage'InvalidBean:propertydagen'inE:\Documenten\Dropbox\Dropbox\dummy-

PHP filter_input_array() 没有按预期失败

我正在尝试使用filter_input_array()来验证一些发布数据。尽管我尽了最大努力,该函数似乎在$filter数组内返回空值(通过条件),而不是像我预期的那样验证失败并返回false。代码实现示例如下:$filters=array('phone'=>FILTER_VALIDATE_INT,'email'=>FILTER_VALIDATE_EMAIL);if(filter_input_array(INPUT_POST,$filters)){//filtersarevalidatedinserttodatabase}else{//filtersareinvalidreturnto

php - 为什么 array === array 在 PHP 中等于 true?

在php中,===是相同的比较运算符,即检查两个变量是否具有相同的值和相同的类型。但是为什么array("asdf")===array("asdf")返回true?我想这两个都会创建具有相同内容的新数组(如果我错了请纠正我)。 最佳答案 简单的答案:array("asdf")===array("asdf")返回true,因为正在比较的两个数组:具有相同的键/值对,每个相同的类型,并且按照完全相同的顺序。这就是array()===array()的意思。好读ArrayOperators 关于

php - 为什么这个 array_filter 方法不调用这个函数?

privatestaticfunctionreturnSameElementIfNotEmpty($item){if(empty($item)){returnfalse;}else{returntrue;}}publicstaticfunctionclean($array){returnarray_filter($array,'returnSameElementIfNotEmpty');}当我尝试使用示例数组运行它时,我得到:警告:array_filter()期望参数2是一个有效的回调,未找到函数“returnSameElementIfNotEmpty”或第27行C:\Framewor

PHP 错误抑制被忽略

我当前的php.ini文件设置为报告除弃用和严格标准之外的所有错误,如下所示:error_reporting=E_ALL&~E_STRICT&~E_DEPRECATED使用此设置的原因是我们迫切需要在托管我们网站的linux服务器上执行PHP升级;问题是弃用的功能和严格的标准建议将很快填满170多个网站的错误日志文件。错误主要是由于函数未声明为静态等小问题造成的。最终我们将访问所有站点并修复这些问题,但与此同时我们需要抑制错误。我在本地测试环境(运行我们希望升级到5.4.3的PHP版本)中遇到的问题是错误仍然显示,之前打印了以下内容:SCREAM:Errorsuppressionign

php - array_filter 将索引数组转换为关联数组

我有一个包含一些关联数组的索引数组,我应用了一个简单的$my_arr=array_filter($my_arr,function($obj){return$obj["value"]过滤数组中的某些项目的函数。这开始让我的Angular前端出现奇怪的错误,所以几分钟后我发现$my_arr正在从索引数组转换为关联数组。这是array_filter中的预期行为吗?如何告诉array_filter我需要一个索引数组?编辑:按照评论中的要求,我的$my_arr:$my_arr=[["foo"=>"bar","value"=>10],["foo"=>"var","value"=>30],["foo

php - PHP 中的 ${$var .'s_array' } 语法是什么?

我目前正在调试一个PHPOpenCart插件,我遇到了以前从未遇到过的语法。我对它的作用和使用原因以及任何文档的链接很感兴趣。罪魁祸首如下:${$variable.'s_array'} 最佳答案 PHP中的变量可以在其声明中包含变量,如下所示:例如尝试运行此代码片段:$var="dog_name";$$var="goldenterrier";echo$dog_name;//gives"goldenterrier"现在你的情况:$variable="random_";${$variable.'s_array'}="someconten

php - 如何使用 PHP 对数组进行排序,忽略 (Mr, Mrs) 或 Some 文章

使用名称对数组进行排序我有一个数组。array(0=>Mr.Bala,1=>Mr.Santhosh,2=>Mrs.Camel,3=>Mrs.Vinoth);仅根据姓名升序排列我的预期输出是array(0=>Mr.Bala,1=>Mrs.Camel,2=>Mr.Santhosh,3=>Mr.Vinoth,); 最佳答案 使用usort,取字符串的第二部分,按点分割,后加空格usort($a,function($i1,$i2){returnstrcmp(explode('.',$i1)[1],explode('.',$i2)[1]);}

php - 如何分解字符串的前 10 个元素忽略其余部分(逗号分隔)

我想将以下字符串分解为最多10个元素$str="a,b,c,d,e,f,g,h,i,j,k,l,m,n,o";进入数组$arr.Triedwith$arr=explode(",",$str,10);结果为Array([0]=>a[1]=>b[2]=>c[3]=>d[4]=>e[5]=>f[6]=>g[7]=>h[8]=>i[9]=>j,k,l,m,n,o)不要$arr[9]=j,k,l,m,n,o应该是$arr[9]=j。 最佳答案 给你:$str="a,b,c,d,e,f,g,h,i,j,k,l,m,n,o";$arr=explo